Skip to content

docs: propose broker operations NIP with executable safety model - #7280

Draft
tlongwell-block wants to merge 1 commit into
mainfrom
meli/nip-broker-contract
Draft

docs: propose broker operations NIP with executable safety model#7280
tlongwell-block wants to merge 1 commit into
mainfrom
meli/nip-broker-contract

Conversation

@tlongwell-block

Copy link
Copy Markdown
Collaborator

What

Separate, draft NIP-style proposal for the 15-operation broker contract; no runtime changes and no edits to #6790, #6922 or #6967.

  • docs/nips/NIP-BA.md: 2,988-word Buzz-local, unassigned NIP; session/HTTP binding, closed action tables, correlation, normalization, retries, security boundaries.
  • docs/formal/nip-broker/model.py: exhaustive finite-state retry/isolation model with nine unsafe mutations.
  • Partial executable wire oracle, all-action examples, negative/boundary checks, assurance and compatibility note.

Semantic changes, not just formatting

Community/principal retry namespace; atomic durable claims; crash fencing; retained tombstones; current authorization before replay; refusal preserves earlier uncertainty; precise absence, size, pagination and partial-effect rules. These are proposed host/client obligations, not claims that the existing SDK or a production host conforms.

Verification

At e464a763d733fea6e512dfa5f028e27ed1da7ceb:

  • python3 docs/formal/nip-broker/model.py: 1,481,544 states / 16,102,044 transitions exhausted; all nine mutations falsified their expected property.
  • python3 -m unittest discover -s docs/formal/nip-broker -v: all nine groups passed.
  • git diff --check; local relative spec links and JSON examples checked.
  • Full just ci attempted on the unchanged main base plus these artifacts. With Rust 1.95.0, checks and all 463 CLI tests passed; test-unit stopped on buzz-acp::acp::tests::keepalive_resets_idle_past_deadline. Full CI not green. Earlier runs encountered a tool timeout and a PATH-selected old compiler. No diagnosis of flakiness or causation asserted.

Review and non-claims

Eva's independent redteam requested and pending; keep draft until findings are resolved/reviewed. This proves only the listed finite-model properties under explicit assumptions, not production correctness, cryptography, all operation semantics or arbitrary executions. No client/host interoperability run exists.

The fixed comparison is NIPs 01/05/07/09/10/29/42/44/46/98 at upstream 488b787848fcf1c6c3498c253264b8121b1a9692. Evidence and weaknesses are in NOTE.md. “Superior in all dimensions to at least 9/10” is not established: prose/model work cannot manufacture deployment maturity or outrank an audited cryptographic standard in every dimension.

Originating Buzz channel: e2b85483-dd46-4ef8-abbe-ab61bbbc4852; thread: 632d2974b24f869d3bc8e941b09feb38ff748a931a033355f7b20b14c3fc0dcf.

Add the fifteen-action Buzz-local NIP-BA draft, finite retry/isolation
model, partial wire oracle and examples. Document semantic clarifications,
verification boundaries and the fixed upstream comparison without claiming
production correctness or universal superiority. Independent review pending.

Co-authored-by: Meli <5aaa86bce934fc3445fc254aab560a40923f10252f92107e665073dede0e04d3@buzz.block.builderlab.xyz>
Signed-off-by: Meli <5aaa86bce934fc3445fc254aab560a40923f10252f92107e665073dede0e04d3@buzz.block.builderlab.xyz>
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

🔐 Codex Security Review

Status: review required for the current range.

The current range is 7a9a5233d9d755e715be0c585cf7850e935d28cf...e464a763d733fea6e512dfa5f028e27ed1da7ceb.
A new review must complete for this exact range. When manual authorization
is required, a Block organization member must comment exactly
@buzz-security-review e464a763d733fea6e512dfa5f028e27ed1da7ceb to authorize a new review.
Any previous review applies only to its recorded range.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant